home *** CD-ROM | disk | FTP | other *** search
/ Workbench Design / WB Collection.iso / workbench werkzeuge / memory & system tools / memminister / memminister.guide (.txt) < prev    next >
Amigaguide Document  |  1996-04-07  |  32KB  |  666 lines

  1. @DATABASE MemMinister
  2. @$VER: MemMinister.guide 1.2 (25.5.95)
  3. @REM Revision 12
  4. @REM AmigaGuide document written by Peter Bornhall
  5. @AUTHOR Marcus Ohlstr
  6. @(C) Copyright 
  7. 1995, Marcus Ohlstr
  8. m. All rights reserved.
  9. @INDEX Index
  10. @NODE Main "MemMinister v1.2 (21.5.95) - AmigaGuide document"
  11. @{LINDENT 2}
  12.                        MemMinister v1.2 (21.5.95)
  13.                     Copyright 
  14. 1995, Marcus Ohlstr
  15.                           All rights reserved.
  16.                           @{"    Introduction    " link Introduction}
  17.                           @{"     Copyright      " link Copyright}
  18.                           @{"     Disclaimer     " link Disclaimer}
  19.                           @{"    Distribution    " link Distribution}
  20.                           @{"    Requirements    " link Requirements}
  21.                           @{"      Features      " link Features}
  22.                           @{"       Usage        " link Usage}
  23.                           @{"     Tooltypes      " link Tooltypes}
  24.                           @{"      History       " link History}
  25.                           @{"       Future       " link Future}
  26.                           @{"        Bugs        " link Bugs}
  27.                           @{"       Author       " link Author}
  28.                           @{"       Thanks       " link Thanks}
  29.           MemMinister is endorsed by @{" Users Standards Group " link USG}.
  30.             AmigaGuide
  31.  document written by Peter Bornhall.
  32. @ENDNODE
  33. @NODE Index "Index"
  34. @{LINDENT 2}
  35. @{" Contents         " link Main}
  36. @{" Introduction     " link Introduction}
  37. @{" Copyright        " link Copyright}
  38. @{" Disclaimer       " link Disclaimer}
  39. @{" Distribution     " link Distribution}
  40. @{" Requirements     " link Requirements}
  41. @{" Features         " link Features}
  42. @{" Usage            " link Usage}
  43.     @{" Main window     " link Window}
  44.     @{" Shell/CLI usage " link CLIUsage}
  45.     @{" Flush gadget    " link gadFLUSH}
  46.     @{" Snap gadget     " link gadSNAP}
  47. @{" Tooltypes        " link Tooltypes}
  48.     @{" LEFT            " link optLEFT}
  49.     @{" TOP             " link optTOP}
  50.     @{" ZIPLEFT         " link optZIPLEFT}
  51.     @{" ZIPTOP          " link optZIPTOP}
  52.     @{" ZIPWIDTH        " link optZIPWIDTH}
  53.     @{" ZIPPED          " link optZIPPED}
  54.     @{" TITLEFORMAT     " link optTITLEFORMAT}
  55.     @{" DECIMALPOINT    " link optDECIMALPOINT}
  56.     @{" SAVEPOSITION    " link optSAVEPOSITION}
  57.     @{" FONTNAME        " link optFONTNAME}
  58.     @{" FONTSIZE        " link optFONTSIZE}
  59.     @{" DELAYTIME       " link optDELAYTIME}
  60.     @{" WINDOWTOBACK    " link optWINDOWTOBACK}
  61.     @{" TOOLPRI         " link optTOOLPRI}
  62.     @{" STARTPRI        " link optSTARTPRI}
  63.     @{" DONOTWAIT       " link optDONOTWAIT}
  64. @{" History          " link History}
  65. @{" Future           " link Future}
  66. @{" Bugs             " link Bugs}
  67. @{" Author           " link Author}
  68. @{" Thanks           " link Thanks}
  69. @ENDNODE
  70. @NODE Introduction "An introduction to MemMinister"
  71. @{LINDENT 2}
  72.  MemMinister is a memory watch utility developed on and for the Amiga
  73. computer.  It is aimed first and foremost at the programmer, which can
  74. benefit from the special features of MemMinister.
  75.  MemMinister is small, both in size and memory requirements, and very
  76. efficient.  It is user-friendly and configurable.
  77.  MemMinister features a @{" FLUSH " link gadFLUSH} option and a @{" SNAP " link gadSNAP} feature, making it
  78. very easy for programmers to make sure their programs return all memory
  79. allocated.
  80.  See also:  @{" Features " link Features}
  81. @ENDNODE
  82. @NODE Copyright "Copyrights concerning MemMinister"
  83. @{LINDENT 2}
  84.  MemMinister is Copyright 
  85. 1995 to Marcus Ohlstr
  86. m.  Marcus Ohlstr
  87. will be referred to as the @{" AUTHOR " link Author} throughout this document.
  88.  MemMinister is FreeWare, NOT Public Domain.  This means that you are
  89. allowed to use and distribute it without any restraints, though you are
  90. not allowed to change, reverse engineer, patch or in any way modify the
  91. files distributed in the MemMinister package.  Nor are you allowed to
  92. re-use all or parts of the sourcecode without written permission from
  93. the author.
  94.  You are NOT allowed to include MemMinister in any commercial products
  95. without the written permission from the author.
  96.  See also:  @{" Distribution " link Distribution}
  97. @ENDNODE
  98. @NODE Disclaimer "Disclaimer information"
  99. @{LINDENT 2}
  100.  MemMinister 1.2 has been tested and evaluated on a number of Amiga
  101. models, including A500+, A1200 with/without accelerator, A3000,
  102. A4000/040 and CDTV with no problems whatsoever.  This is a reasonable
  103. amount of testing to assume that it will work with all Amiga models.
  104.  However, the author does NOT give you any warranties, expressed or
  105. implied, that MemMinister will work on your specific hardware.
  106.  All use of this program is at your own risk, and the author can not be
  107. held responsible for any damage that might occur to your system, either
  108. direct or indirect.
  109.  See also:  @{" Requirements " link Requirements}
  110. @ENDNODE
  111. @NODE Distribution "Distribution limitations"
  112. @{LINDENT 2}
  113.  You are allowed to freely copy and redistribute the MemMinister package
  114. as many times and to anyone you like, just as long as the conditions
  115. described below are followed.
  116.  - You may NOT add any files to the distributed package, except
  117.    FILE_ID.DIZ, FILEDESC.TXT and FILEPATH.LST.
  118.  - You may NOT remove any files from the distributed package.  The
  119.    following files MUST be present and unchanged;
  120.         @{u}Filename                                       Size@{uu}
  121.         MemMinister.info                                628
  122.         MemMinister/MemMinister                        7000
  123.         MemMinister/MemMinister.guide                 31600
  124.         MemMinister/MemMinister.guide.info              468
  125.         MemMinister/MemMinister.info                    604
  126.         MemMinister/Source.info                         628
  127.         MemMinister/Source/Build.info                   841
  128.         MemMinister/Source/MemMinister.c              18000
  129.         MemMinister/Source/MemMinister.c.info           486
  130.         MemMinister/Source/MemMinister.h               1128
  131.         MemMinister/Source/MemMinister.h.info           486
  132.         MemMinister/Source/MemMinister_rev.c             65
  133.         MemMinister/Source/MemMinister_rev.c.info       486
  134.         MemMinister/Source/Rev.config                     3
  135.         MemMinister/Source/Rev.h                        214
  136.         MemMinister/Source/SCOPTIONS                    133
  137.         MemMinister/Source/SCOPTIONS.info               470
  138.         MemMinister/Source/SMakeFile                    827
  139.         MemMinister/Source/SMakeFile.info               838
  140.  - You may NOT sell the MemMinister package.  You MAY charge a small
  141.    amount for copying and distribution costs though.
  142.  - You may NOT redistribute the MemMinister package if it doesn't
  143.    conform to all of the conditions mentioned above.
  144. @ENDNODE
  145. @NODE Requirements "What is required to use MemMinister?"
  146. @{LINDENT 2}
  147.  MemMinister requires at least AmigaDOS v2.0 (v36) or higher to run.  It
  148. will harmlessly exit on older DOS versions, telling you what went wrong.
  149.  MemMinister limits the amount of displayable memory to 999.999.999
  150. bytes, but that will probably not be a problem for the foreseeable
  151. future.
  152. @ENDNODE
  153. @NODE Features "What is the main features of MemMinister?"
  154. @{LINDENT 2}
  155.  One night when I was finishing some functions for my new program, I
  156. wanted to find out if those functions returned all the memory they
  157. allocated.  I started a memory watch program, and it promptly decided to
  158. crash!  I began looking for the other similar programs I got, but they
  159. didn't work the way I wanted.  None of them accepted my fontsettings, or
  160. in other words, they looked awful!
  161.  I decided to write my own memory watcher, and because I never was
  162. satisfied with any of the existing ones, I decided to do the ultimate
  163. memory watcher!  So, I began looking for bugs and misfeatues in every
  164. memory watcher I got my hands on, and tried to improve on everything.
  165. And of course I also added some other features and functions.  Thus,
  166. MemMinister was born!
  167.  MemMinister is a continuing project, and I will continue to develop it
  168. until both you and I are fully satisfied.
  169.  Here is a list of the main features in MemMinister
  170.  - MemMinister is font-sensitive, unlike most other memory watchers.
  171.  - MemMinister offers an easy way to @{" flush " link gadFLUSH} memory from unused
  172.    resources, like libraries, devices, fonts and other flushable
  173.    resources.
  174.  - MemMinister features an easy-to-use @{" snap " link gadSNAP} function, enabling the
  175.    user to see exactly what changes in memory usage takes place.
  176.  - MemMinister is very small and efficient.  Uses hardly any CPU time,
  177.    usually less then 0.2% to 0.6% on an A1200.  Depending on current
  178.    mode of operation.
  179.  - MemMinister features a zipped window, not higher than the screen
  180.    title, easy to position, showing you the amount of free memory.
  181.  - Configurable window title in zipped mode.
  182. @ENDNODE
  183. @NODE Usage "Using MemMinister"
  184. @{LINDENT 2}
  185.  To start MemMinister, simply double-click its icon, or type @{b}MemMinister@{ub}
  186. in a Shell/CLI-window.  MemMinister doesn't require any other resources,
  187. so the only thing you need to do to use it, is to simply copy it to
  188. wherever you want it.
  189.  See also:  @{" Shell/CLI Usage " link CLIUsage}
  190.  Alright, let's put the settings aside for a while.  When you have
  191. started MemMinister, you will see the @{" main window " link Window} with two gadgets and
  192. a textfield consisting of three rows divided into four columns.  The two
  193. gadgets are the @{" flush " link gadFLUSH} and @{" snap " link gadSNAP} gadgets.
  194.  Anyway, the main intention for MemMinister is to be able to see whether
  195. a program releases all memory it has allocated or not.  This might not
  196. be the case with all programs (see notes below), but most programs
  197. should release all the memory used.  Now, to check if YOUR program
  198. returns all memory, follow these simple steps;
  199.     1.   Start MemMinister, if it isn't already running.
  200.     2.   Flush the memory.
  201.     3.   Snap current amount of free memory.
  202.     4.   Start your program and use it the way it's supposed to be used.
  203.     5.   Quit your program.
  204.     6.   Flush memory yet again.
  205.  Now, if all values in the rightmost column are zero, your program has
  206. returned all memory it allocated.  If greater than zero, your program
  207. has NOT returned all of the memory it allocated, which means you will
  208. have to find the erroneous routine.  Should the values be negative, your
  209. program freed more memory than it allocated.  That should not happen,
  210. but you will never know (would be nice, though :).
  211.  @{b}Note:@{ub}  Some programs, for example programs using the audio.device, does
  212. NOT free all memory when run.  The reason for this is because (in this
  213. example) audio.device can't be totally flushed out from memory.  So a
  214. recommendation would be to run your program at least once BEFORE working
  215. through steps 1-6 above.
  216.  @{b}Note:@{ub}  If you launch your program from a shell, make sure you use the
  217. standard Commodore Shell/CON:.  This is because not all shells and
  218. console devices allocates all buffers immediately (KingCON, for example,
  219. does not allocate buffers until they are needed).  Otherwise, this will
  220. make MemMinister show incorrect values since some of the used memory is
  221. being allocated by your shell/CON: and not by your program.
  222.  @{b}Note:@{ub}  When checking your program, you shouldn't do anything else!
  223. Even re-arranging a window may (de)allocate some memory, and the values
  224. shown by MemMinister won't be valid anymore!
  225.  Now then, you might want to know more about how you can configure
  226. MemMinister to your personal preferences, so why not take a look at the
  227. @{" tooltypes " link Tooltypes} and find out?
  228. @ENDNODE
  229. @NODE Window "MemMinister's main window"
  230. @{LINDENT 2}
  231.  MemMinister's main window consists of two gadgets and three rows of
  232. text.  This is the main window, as opposed to the zipped window, which
  233. does NOT have these features.
  234.  The two gadgets are the @{" flush " link gadFLUSH} gadget, and the @{" snap " link gadSNAP} gadget.  The
  235. flush gadget removes unnecessary resources from memory, and the snap
  236. gadget makes a "snapshot" of the current amount of free memory (chip,
  237. fast and total).
  238.  The interesting thing though, is the three rows divided into four
  239. columns.  These are the main feature of MemMinister.  The first column
  240. simply tells you the type of memory for that row, while the second
  241. column constantly shows the current amount of free memory.  The third
  242. column is what is called "snapped" memory.
  243.  Snapped memory is simply the amount of free memory when MemMinister was
  244. started, or when you last pressed the snap gadget.  This value does not
  245. change unless you press the snap gadget.  This brings us to the fourth
  246. column.
  247.  The fourth column is the amount of memory (de)allocated since you
  248. started MemMinister (or manually snapped memory).  This allows you to
  249. see exactly how much memory has been allocated or freed (negative
  250. values).
  251. @ENDNODE
  252. @NODE CLIUsage "Using MemMinister from Shell/CLI"
  253. @{LINDENT 2}
  254.  MemMinister has VERY limited usage from shell in the current version.
  255. Only two (one, if you really want to argue about it) options actually,
  256. these two;
  257.     1> MemMinister      ; starts MemMinister with default settings.
  258.     1> MemMinister -    ; MemMinister will try to load the settings
  259.                         ; from its icon @{" tooltypes " link Tooltypes}.
  260.  Nothing fancy as you can see, but there will probably be some changes
  261. to this part in an upcoming release.  See @{" Future " link Future} for more info.
  262. @ENDNODE
  263. @NODE gadFLUSH "The Flush gadget"
  264. @{LINDENT 2}
  265.  When you click the flush gadget, located in the top left corner of the
  266. main window (no, not the close gadget), MemMinister will attempt to
  267. flush memory used by loaded, but unused, libraries, fonts, devices, and
  268. other "flushable" resources.  This behaviour is the same as if you would
  269. type @{b}Avail FLUSH@{ub} in a shell-window.
  270.  The Amiga OS will automatically free this memory if necessary, so you
  271. don't HAVE to do it manually.  But in some cases it is nice to be able
  272. to flush as easy as clicking a gadget, especially when you want to
  273. monitor the memory use of a certain program (see procedure in @{" Usage " link Usage}).
  274. Still, the OS will not flush memory unless it really has to, which means
  275. that if you're out of fast memory, but you've got some chip memory left,
  276. the OS will use chip memory instead of flushing and using the fast
  277. memory.  To prevent this, you have to flush the memory manually.
  278. @ENDNODE
  279. @NODE gadSNAP "The Snap gadget"
  280. @{LINDENT 2}
  281.  The snap gadget is the gadget with the text " Free  Snapped  Used " in
  282. it.  When pressing this gadget, MemMinister will make a "snapshot" of
  283. the current amount of free memory, and use as a comparison until next
  284. time you press the snap gadget.
  285. @ENDNODE
  286. @NODE Tooltypes "Tooltype settings"
  287. @{LINDENT 2}
  288.  You configure MemMinister by setting the tooltypes of its icon.  The
  289. tooltypes you can use are;
  290.     @{" LEFT         " link optLEFT}    Set left edge of main window.
  291.     @{" TOP          " link optTOP}    Set top edge of main window.
  292.     @{" ZIPLEFT      " link optZIPLEFT}    Set left edge of zipped window.
  293.     @{" ZIPTOP       " link optZIPTOP}    Set top edge of zipped window.
  294.     @{" ZIPWIDTH     " link optZIPWIDTH}    Set width of zipped window.
  295.     @{" ZIPPED       " link optZIPPED}    Tell MemMinister to start in zipped mode.
  296.     @{" TITLEFORMAT  " link optTITLEFORMAT}    Set windowtitle format in zipped mode.
  297.     @{" DECIMALPOINT " link optDECIMALPOINT}    Set decimalpoint used in zipped window.
  298.     @{" SAVEPOSITION " link optSAVEPOSITION}    Save window position on exit.
  299.     @{" FONTNAME     " link optFONTNAME}    Set font to use in main window.
  300.     @{" FONTSIZE     " link optFONTSIZE}    Set size to use in main window.
  301.     @{" DELAYTIME    " link optDELAYTIME}    Set update interval in 1/50th of a second.
  302.     @{" WINDOWTOBACK " link optWINDOWTOBACK}    Open MemMinister behind other windows.
  303.     @{" TOOLPRI      " link optTOOLPRI}    SYSTEM: Priority of program.
  304.     @{" STARTPRI     " link optSTARTPRI}    SYSTEM: WBStartup priority.
  305.     @{" DONOTWAIT    " link optDONOTWAIT}    SYSTEM: Wait for program to finish?
  306. @ENDNODE
  307. @NODE optLEFT "Tooltype LEFT"
  308. @{LINDENT 2}
  309.  @{b}LEFT@{ub}
  310.  This tooltype allows you to specify the left edge of MemMinister's main
  311. window.  Values ranges from 0.  Incorrect values will be adjusted to
  312. prevent failures.
  313.  Format:    LEFT=integer
  314.  Example:   LEFT=125
  315.             LEFT=0
  316.             LEFT=-1567
  317.  Default:   LEFT=0
  318.  See also:  @{" TOP " link optTOP} @{" ZIPPED " link optZIPPED}
  319. @ENDNODE
  320. @NODE optTOP "Tooltype TOP"
  321. @{LINDENT 2}
  322.  @{b}TOP@{ub}
  323.  This tooltype allows you to specify the top edge of MemMinister's main
  324. window.  Values ranges from 0.  Incorrect values will be adjusted to
  325. prevent failures.
  326.  Format:    TOP=integer
  327.  Example:   TOP=125
  328.             TOP=0
  329.             TOP=-1567
  330.  Default:   TOP=0
  331.  See also:  @{" LEFT " link optLEFT} @{" ZIPPED " link optZIPPED}
  332. @ENDNODE
  333. @NODE optZIPLEFT "Tooltype ZIPLEFT"
  334. @{LINDENT 2}
  335.  @{b}ZIPLEFT@{ub}
  336.  This tooltype allows you to specify the left edge of MemMinister's
  337. zipped window.  Values ranges from 0.  Incorrect values will be adjusted
  338. to prevent failures.
  339.  Format:    ZIPLEFT=integer
  340.  Example:   ZIPLEFT=125
  341.             ZIPLEFT=0
  342.             ZIPLEFT=-1567
  343.  Default:   ZIPLEFT=0
  344.  See also:  @{" ZIPTOP " link optZIPTOP} @{" ZIPPED " link optZIPPED}  @{" ZIPWIDTH " link optZIPWIDTH}
  345. @ENDNODE
  346. @NODE optZIPTOP "Tooltype ZIPTOP"
  347. @{LINDENT 2}
  348.  @{b}ZIPTOP@{ub}
  349.  This tooltype allows you to specify the top edge of MemMinister's
  350. zipped window.  Values ranges from 0.  Incorrect values will be adjusted
  351. to prevent failures.
  352.  Format:    ZIPTOP=integer
  353.  Example:   ZIPTOP=125
  354.             ZIPTOP=0
  355.             ZIPTOP=-1567
  356.  Default:   ZIPTOP=0
  357.  See also:  @{" ZIPLEFT " link optZIPLEFT} @{" ZIPPED " link optZIPPED} @{" ZIPWIDTH " link optZIPWIDTH}
  358. @ENDNODE
  359. @NODE optZIPWIDTH "Tooltype ZIPWIDTH"
  360. @{LINDENT 2}
  361.  @{b}ZIPWIDTH@{ub}
  362.  This tooltype allows you to specify the width of MemMinister's zipped
  363. window.  Incorrect values will be adjusted to prevent failures.
  364.  Format:    ZIPWIDTH=integer
  365.  Example:   ZIPWIDTH=325
  366.             ZIPWIDTH=50
  367.             ZIPWIDTH=-100
  368.  Default:   ZIPWIDTH=200
  369.  See also:  @{" ZIPLEFT " link optZIPLEFT} @{" ZIPTOP " link optZIPTOP} @{" ZIPPED " link optZIPPED} @{" TITLEFORMAT " link optTITLEFORMAT}
  370. @ENDNODE
  371. @NODE optZIPPED "Tooltype ZIPPED"
  372. @{LINDENT 2}
  373.  @{b}ZIPPED@{ub}
  374.  This tooltype allows you to specify that you want MemMinister to open a
  375. zipped window immediately instead of opening its main window.
  376.  Example:   ZIPPED
  377.             (ZIPPED)
  378.  Default:   (ZIPPED)
  379.  See also:  @{" ZIPLEFT " link optZIPLEFT} @{" ZIPTOP " link optZIPTOP} @{" ZIPWIDTH " link optZIPWIDTH}
  380. @ENDNODE
  381. @NODE optTITLEFORMAT "Tooltype TITLEFORMAT"
  382. @{LINDENT 2}
  383.  @{b}TITLEFORMAT@{ub}
  384.  This tooltype allows you to specify exactly what information the
  385. windowtitle should contain when MemMinister is in zipped mode.  The
  386. title will be a copy of the string you enter here, with the exception
  387. that you may enter control codes for special information.
  388.  All control codes consists of %[modifier]code.  Where code is one of
  389. the following;
  390.     c or C      = Total amount of free CHIP memory
  391.     f or F      = Total amount of free FAST memory
  392.     t or T      = Total amount of free memory
  393.  The modifiers are as follows;
  394.     b or B      = Bytes (default modifier)
  395.     k or K      = Kilobytes
  396.     m or M      = Megabytes
  397.  As you can see, codes and modifiers may be specified either in upper or
  398. lower case characters.  %cm, %cM, %Cm and %CM yields the same result.
  399.  If you need to put a percent-sign (%) in the windowtitle, you'll have
  400. to put two % in the string, i.e.  use %% for every % you want...
  401.  Format:    TITLEFORMAT=string
  402.  Example:   TITLEFORMAT=Total: %tmMB
  403.             TITLEFORMAT=%cmMB CHIP, %fmMB FAST
  404.             TITLEFORMAT=%%%% %S%t%r%a%n%g%e
  405.  Default:   TITLEFORMAT=Total: %t
  406.  See also:  @{" ZIPPED " link optZIPPED} @{" DECIMALPOINT " link optDECIMALPOINT}
  407. @ENDNODE
  408. @NODE optDECIMALPOINT "Tooltype DECIMALPOINT"
  409. @{LINDENT 2}
  410.  @{b}DECIMALPOINT@{ub}
  411.  This tooltype allows you to specify the decimalpoint used for kilobytes
  412. and megabytes in zipped mode.  This allows you to replace the point with
  413. a comma, which is used in some countries.
  414.  For example, let's say you use "TITLEFORMAT=%cmMB CHIP" and you enter
  415. "DECIMALPOINT=mega".  That would result in a windowtitle with the
  416. following string (for example)
  417.     1mega65MB CHIP
  418.  This means that MemMinister places the entire string where the
  419. decimalpoint is supposed to be.  There is probably no sensible reason to
  420. use more than one character, but the possibility is there.
  421.  "DECIMALPOINT" and "DECIMALPOINT=" results in the default char.
  422.  Format:    DECIMALPOINT=string
  423.  Example:   DECIMALPOINT=,
  424.             DECIMALPOINT=k
  425.  Default:   DECIMALPOINT=.
  426.  See also:  @{" ZIPPED " link optZIPPED} @{" TITLEFORMAT " link optTITLEFORMAT}
  427.  Note:      This does not affect the main window.
  428. @ENDNODE
  429. @NODE optSAVEPOSITION "Tooltype SAVEPOSITION"
  430. @{LINDENT 2}
  431.  @{b}SAVEPOSITION@{ub}
  432.  This tooltype tells MemMinister to remember its window position and
  433. window mode when it is closed.  This means that it will open up the same
  434. way that you left it last time you used it.
  435.  This behaviour is very useful when you want to find some nice values
  436. for the LEFT, TOP, ZIPLEFT and ZIPTOP tooltypes.  Start MemMinister,
  437. position the window, and quit MemMinister.  No tedious work finding the
  438. values you want.
  439.  For some strange reason though, there is no way to find the zipped
  440. window position without actually zipping the window, so you will have to
  441. perform the above process once for the main window and once for the
  442. zipped window.  Don't blame me, blame the OS for this.
  443.  Format:    SAVEPOSITION
  444.  Example:   SAVEPOSITION
  445.             (SAVEPOSITION)
  446.  Default:   (SAVEPOSITION)
  447.  See also:  @{" LEFT " link optLEFT} @{" TOP " link optTOP} @{" ZIPPED " link optZIPPED}
  448.  Note:      The position will of course not be saved if the computer is
  449.             reset or if it should crash.
  450. @ENDNODE
  451. @NODE optFONTNAME "Tooltype FONTNAME"
  452. @{LINDENT 2}
  453.  @{b}FONTNAME@{ub}
  454.  This tooltype allows you to specify the font used in MemMinister's main
  455. window.  MemMinister defaults to the default SCREEN font.  If the font
  456. specified isn't found, MemMinister will revert to the default font.
  457.  Format:    FONTNAME=string
  458.  Example:   FONTNAME=courier.font
  459.             FONTNAME=helvetica.font
  460.             FONTNAME=CGTimes.font
  461.  Default:   (FONTNAME=)
  462.  See also:  @{" FONTSIZE " link optFONTSIZE}
  463.  Note:      If you want to use FONTNAME, you must also set FONTSIZE!
  464. @ENDNODE
  465. @NODE optFONTSIZE "Tooltype FONTSIZE"
  466. @{LINDENT 2}
  467.  @{b}FONTSIZE@{ub}
  468.  This tooltype allows you to specify the size of the font specified in
  469. FONTNAME.  If the value specified here is invalid, MemMinister will
  470. revert to the default font.  All values greater than 0 is permitted, but
  471. if the font is too big, the window will be clipped.
  472.  Format:    FONTSIZE=integer
  473.  Example:   FONTSIZE=8
  474.             FONTSIZE=13
  475.             FONTSIZE=100
  476.  Default:   (FONTSIZE=)
  477.  See also:  @{" FONTNAME " link optFONTNAME}
  478.  Note:      FONTSIZE is only used in conjunction with FONTNAME.
  479. @ENDNODE
  480. @NODE optDELAYTIME "Tooltype DELAYTIME"
  481. @{LINDENT 2}
  482.  @{b}DELAYTIME@{ub}
  483.  This tooltype allows you to choose how often MemMinister should update
  484. the window.  The value is measured in 1/50 of a second.  Lowering this
  485. value will increase the strain on the CPU.  You could set DELAYTIME=0
  486. and use TOOLPRI=-128, which would cause MemMinister to update its data
  487. continously, but ONLY as long as no other program wants the CPU!
  488.  Format:    DELAYTIME=integer
  489.  Example:   DELAYTIME=7
  490.             DELAYTIME=100
  491.             DELAYTIME=0
  492.  Default:   DELAYTIME=12
  493.  See also:  @{" TOOLPRI " link optTOOLPRI}
  494. @ENDNODE
  495. @NODE optWINDOWTOBACK "Tooltype WINDOWTOBACK"
  496. @{LINDENT 2}
  497.  @{b}WINDOWTOBACK@{ub}
  498.  This tooltype tells MemMinister to open its window behind all other
  499. windows.
  500.  Format:    WINDOWTOBACK
  501.  Example:   WINDOWTOBACK
  502.             (WINDOWTOBACK)
  503.  Default:   (WINDOWTOBACK)
  504. @ENDNODE
  505. @NODE optTOOLPRI "Tooltype TOOLPRI"
  506. @{LINDENT 2}
  507.  @{b}TOOLPRI@{ub}
  508.  This is a system tooltype, used to set the priority of a program.  The
  509. higher the priority, the more CPU-time a program gets.  Values ranges
  510. from -128 to 127, but you should NOT use priorities greater than 5!
  511.  Format:    TOOLPRI=integer
  512.  Example:   TOOLPRI=0
  513.             TOOLPRI=-1
  514.             TOOLPRI=5
  515.  Default:   TOOLPRI=0
  516.  Note:      This is a system tooltype, which means that it can be used
  517.             with any program, not just MemMinister.
  518. @ENDNODE
  519. @NODE optSTARTPRI "System Tooltype: STARTPRI"
  520. @{LINDENT 2}
  521.  @{b}STARTPRI@{ub}
  522.  This is a system tooltype, which tells Workbench in which order the
  523. programs in WBStartup should be started.  Higher STARTPRI programs are
  524. started before the programs with lower values.  Values ranges from -128
  525. to 127, but I recommend you to use -128.  That way MemMinister will
  526. probably show memory usage as 0 when it starts.
  527.  Format:    STARTPRI=integer
  528.  Example:   STARTPRI=15
  529.             STARTPRI=-128
  530.             STARTPRI=0
  531.  Default:   STARTPRI=0
  532.  Note:      This is a system tooltype, which means that it can be used
  533.             with any program, not just MemMinister.
  534. @ENDNODE
  535. @NODE optDONOTWAIT "System Tooltype: DONOTWAIT"
  536. @{LINDENT 2}
  537.  @{b}DONOTWAIT@{ub}
  538.  This is a system tooltype, telling Workbench not to wait for a program
  539. to exit.  Using MemMinister, you should make sure that this tooltype is
  540. set, otherwise Workbench will pop up a requester asking you if you want
  541. to wait for MemMinister to finish (which you don't, you want it
  542. running).
  543.  Format:    DONOTWAIT
  544.  Example:   DONOTWAIT
  545.             (DONOTWAIT)
  546.  Default:   (DONOTWAIT)
  547.  Note:      This is a system tooltype, which means that it can be used
  548.             with any program, not just MemMinister.
  549. @ENDNODE
  550. @NODE History "History of MemMinister"
  551. @{LINDENT 2}
  552.   v1.2    21-May-95       rev 36.308
  553.     - Limited Shell/CLI support.
  554.     - User-configurable window positions, with save option.
  555.     - MemMinister can now be started in zipped mode.
  556.     - Alternative font possible for main window.
  557.     - User-configurable update interval.
  558.     - Fully configurable window title in zipped mode.
  559.     - AmigaGuide document entirely rewritten.
  560.   v1.1    22-Aug-94       rev 37.185
  561.     - MemMinister now shows separate information about chip,
  562.       fast and total amount of memory.
  563.     - Added "Snapped" and "Used" fields.
  564.     - Added @{" snap " link gadSNAP} gadget.
  565.     - Added @{" flush " link gadFLUSH} gadget.
  566.     - Old v1.0 mode when window is zipped, i.e. when you click the
  567.       zoom-gadget, you will get a small window showing the amount of
  568.       total free memory in the windowtitle.
  569.     - Documentation rewritten in AmigaGuide format.
  570.   v1.0    15-Jul-94
  571.     - Simply opens a window showing the amount of free memory in the
  572.       windowtitle.
  573. @ENDNODE
  574. @NODE Future "Future plans for MemMinister"
  575. @{LINDENT 2}
  576.  What are the plans for future releases?  Well, this is a small list of
  577. things that might be incorporated soon, but if you have any suggestions
  578. to add, please let me know!  Click @{" here " link Author} to see the author's address.
  579.  - Better Shell/CLI support.
  580.  - Extended support for configuring window title in zipped mode.
  581.  - Limited menu support for saving tooltype settings.
  582.  - Feature that unzips window when activated, and vice versa.
  583. @ENDNODE
  584. @NODE Bugs "Bugs or undocumented features?"
  585. @{LINDENT 2}
  586.  I'm currently not aware of any bugs in MemMinister, but there is always
  587. the possibility of bugs creeping in.
  588.  If YOU find any bugs, please contact @{" me " link Author} as soon as possible.
  589.  I would appreciate if you could include detailed information about your
  590. system, such as computer model, amount of memory, screenmode, fonts,
  591. peripherals, kickstart and workbench versions.  And please, try to
  592. include a detailed description of how to recreate the problem.  That
  593. would help a lot and make it easier to find the bug(s).
  594. @ENDNODE
  595. @NODE Author "How to contact the author"
  596. @{LINDENT 2}
  597.  If you want to contact the author, use one of the following addresses:
  598.       Snail:    Marcus Ohlstr
  599.                 Stopv
  600. gen 104
  601.                 S-16143 BROMMA
  602.                 SWEDEN
  603.      e-mail:    marcus@karkis.canit.se
  604.      FidoNet:   Marcus Ohlstrom @  2:201/417.31      (or 2:201/411.99)
  605.     AmigaNet:   Marcus Ohlstrom @ 39:164/104.31
  606.      USG-Net:   Marcus Ohlstrom @  8:102/104.31
  607.  I will try to reply, especially to electronic mail.  If you want to be
  608. sure your letter reaches me, use snail-mail, but if you want a fast
  609. reply, use e-mail or FidoNet netmail.
  610. @ENDNODE
  611. @NODE Thanks "Thanks to the following people"
  612. @{LINDENT 2}
  613.  I would like to thank the following people, who have aided and
  614. supported me in getting MemMinister released (no particular order);
  615.   Peter Bornhall,
  616.   Stefan Pettersson,
  617.   Mattias Ahnberg
  618.   and Jim Franz
  619. n     for beta-testing MemMinister
  620.   Peter Bornhall      for all his ideas and writing this documentation
  621.   Tomas K
  622. rki         for being my Fido-boss, and supplying me with a
  623.                           beta-testing echo
  624.   Terry Wood          for being the first person sending me a letter
  625.                           about MemMinister
  626. @ENDNODE
  627. @NODE USG "Introduction to Users Standards Group"
  628. @{LINDENT 2}
  629.  @{b}AN INTRODUCTION TO USERS STANDARDS GROUP@{ub}
  630.  USG is a non-profit organisation of users and developers who are
  631. willing to support and aid in the development of high quality software
  632. and standards.  As such, USG and USG-Net will help developers with ideas
  633. to make their product better, and to encourage them to actually release
  634. their products.  USG will also help with suggestions, tips, technical
  635. details, and to provide betatesters for these products.  Developers
  636. connected to USG-Net will also find it useful to set up their own echo,
  637. which will provide them with even more help in finding the "right way"
  638. for their product.
  639.  Joining USG is completely free of charge, and there is currently no
  640. reason to change this policy.  As a member of USG, you are not required
  641. to do anything, so those who just feels that they want to support the
  642. idea should not be disencouraged.  Also, USG allows entire development
  643. teams to join.  To join USG, fill in the following information;
  644.     Name        - First and last name, or name of development team
  645.     Address     - Withheld from the public eye on request
  646.     Country     - Your country
  647.     Born        - Date of birth, optional
  648.     E-mail      - Any E-mail and/or netaddresses you have
  649.     System      - Platform and system you use
  650.     Products    - Information on any products you are developing
  651.  Also, let us know if you are a developer, if you want to take active
  652. part in development, or if you are just supporting USG.  If you are
  653. interested in becoming a betatester, enclose full details on your system
  654. setup and software.  This information will then be sent to the
  655. betatester coordinator.
  656.  Send your membership info to;
  657.       Snail:    Peter Bornhall
  658.                 Back 5, Frammestad
  659.                 S-46598 NOSSEBRO
  660.                 SWEDEN
  661.      e-mail:    bornhall@karkis.canit.se
  662.      FidoNet:   Peter Bornhall @  2:201/417.41
  663.      USG-Net:   Peter Bornhall @  8:102/104.41
  664.     AmigaNet:   Peter Bornhall @ 39:164/104.41
  665. @ENDNODE
  666.